package com.odontosis.ioc;

import com.odontosis.service.PacienteService;
import com.odontosis.service.PagamentoService;
import com.odontosis.service.ParametrosMalaDiretaService;
import com.odontosis.service.ParametrosService;
import com.odontosis.service.ProcedimentoService;
import com.odontosis.service.ReciboService;
import com.odontosis.service.ServicoConveniadoService;
import com.odontosis.service.ServicoService;
import com.odontosis.service.UsuarioService;

public class ContainerIoc {
	
	public static ServicoService getServicoService() {
		try {
			return new ServicoService();
		}catch (Exception e) {
			throw new RuntimeException("Falha ao criar Service de Serviço Service");
		}
	}
	
	public static PacienteService getPacienteService() throws Exception{
		return new PacienteService();
	}
	
	public static UsuarioService getUsuarioService() {
		try {
			return new UsuarioService();
		}catch (Exception e) {
			throw new RuntimeException("Falah ao criar Service de Usuario Service");
		}
	}
	
	public static PagamentoService getPagamentoService(){
		try {
			return new PagamentoService();
		}catch (Exception e) {
			throw new RuntimeException("Falha ao criar Service de Pagamento Service");
		}
	}
	
	public static ReciboService getReciboService() {
		try {
			return new ReciboService();
		}catch (Exception e) {
			throw new RuntimeException("Falha ao criar Service de Recibo");
		} 
	}
	
	public static ProcedimentoService getProcedimentoService() throws Exception{
		return new ProcedimentoService();
	}
	
	public static ServicoConveniadoService getServicoConveniadoService() throws Exception{
		return new ServicoConveniadoService();
	}
	
	public static ParametrosService getParametrosService()  {
		try {
			return new ParametrosService();
		}catch (Exception e) {
			throw new RuntimeException("Falha ao criar Service de Parametros Service");
		}
	}
	
	public static ParametrosMalaDiretaService getParametrosMalaDiretaService()  {
		try {
			return new ParametrosMalaDiretaService();
		}catch (Exception e) {
			throw new RuntimeException("Falha ao criar Service de Parametros de Mala Direta Service");
		}
	}

}
